#ifndef __ShaderTerrain_H__
#define __ShaderTerrain_H__

#include "d3dheaders.h"
#include "video/Shader.h"

namespace KEngine
{

class Terrain;
class ShaderTerrain : public Shader
{
public:
	ShaderTerrain(Terrain* terrain);
	~ShaderTerrain();

protected:
	virtual void renderImp(Camera* camera);
	virtual bool initialize();

protected:
	D3DXHANDLE			mTechnique;
	D3DXHANDLE			mWorld;
	D3DXHANDLE			mView;
	D3DXHANDLE			mProjection;
	D3DXHANDLE			mAmbienColor;
	D3DXHANDLE			mDiffuseColor;
	D3DXHANDLE			mDiffuseDirection;
	D3DXHANDLE			mCameraPosition;
	D3DXHANDLE			mTexture[TerrainLayers];

	Terrain*			mTerrain;
};

}

#endif //